Fine-Grained Coverage-Based Fuzzing

نویسندگان

چکیده

Fuzzing is a popular software testing method that discovers bugs by massively feeding target applications with automatically generated inputs. Many state-of-art fuzzers use branch coverage as feedback metric to guide the fuzzing process. The fuzzer retains inputs for further mutation only if increased. However, provides shallow sampling of program behaviours and hence may discard interesting mutate. This work aims at taking advantage large body research over defining finer-grained code metrics (such control-flow, data-flow or coverage) evaluating how performance impacted when using these select mutation. We propose make coverage-based support most fine-grained out box (i.e., without changing internals). achieve this making test objectives defined conditions activate mutants kill) explicit new branches in program. such modified then equivalent original target, but will also retain covering additional In addition, all mechanisms penetrate hard-to-cover help objectives. approach evaluate impact supporting two (multiple condition weak mutation) state-of-the-art (AFL++ QSYM) standard LAVA-M MAGMA benchmarks. evaluation suggests our mechanism runtime guidance, where fuzzed instrumented branches, effective could be leveraged encode guidance from human users static analysers. Our results show hard predict before fuzzing, time either neutral negative. As consequence, we do not recommend them fuzzers, except maybe some possibly favorable circumstances yet investigate, like limited parts complement classical campaigns.

برای دانلود باید عضویت طلایی داشته باشید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Ultra-Fine Grained Dual-Phase Steels

This paper provides an overview on obtaining low-carbon ultra-fine grained dual-phase steels through rapid intercritical annealing of cold-rolled sheet as improved materials for automotive applications. A laboratory processing route was designed that involves cold-rolling of a tempered martensite structure followed by a second tempering step to produce a fine grained aggregate of ferrite and ca...

متن کامل

INSTRIM: Lightweight Instrumentation for Coverage-guided Fuzzing

Empowered by instrumentation, coverage-guided fuzzing monitors the program execution path taken by an input, and prioritizes inputs based on their contribution to code coverage. Although instrumenting every basic block ensures full visibility, it slows down the fuzzer and thus the speed of vulnerability discovery. This paper shows that thanks to common program structures (e.g., directed acyclic...

متن کامل

Fine-Grained Entity Recognition

Entity Recognition (ER) is a key component of relation extraction systems and many other natural-language processing applications. Unfortunately, most ER systems are restricted to produce labels from to a small set of entity classes, e.g., person, organization, location or miscellaneous. In order to intelligently understand text and extract a wide range of information, it is useful to more prec...

متن کامل

Fine-Grained Test Minimization

As a software system evolves, its test suite can accumulate redundancies over time. Test minimization aims at removing redundant test cases. However, current techniques remove whole test cases from the test suite using test adequacy criteria, such as code coverage. This has two limitations, namely (1) by removing a whole test case the corresponding test assertions are also lost, which can inhib...

متن کامل

Fine-Grained Concurrent Completion

We present a concurrent Completion procedure based on the use of a SOUR graph as data structure. The procedure has the following characteristics. It is asynchronous, there is no need for a global memory or global control, equations are stored in a SOUR graph with maximal structure sharing, and each vertex is a process, representing a term. Therefore, the parallelism is at the term level. Each e...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: ACM Transactions on Software Engineering and Methodology

سال: 2023

ISSN: ['1049-331X', '1557-7392']

DOI: https://doi.org/10.1145/3587158